import Vue from "vue";
import App from "./App.vue";
import router from "./router"

//全局的钩子函数 beforeEach afterEach (常用)

//组件内的钩子 beforeRouterEnter beforeRouterLeave beforeRouterUpdate

//路由独享钩子 beforeEnter

//全局解析守卫 beforeResolve

//路由守卫(全局前置钩子) 在这里编写逻辑 判断是否让用户访问页面或者拒绝

//用户没有登入的时候 不管访问什么页面 通通都返回登入页面,如果用户直接访问的是登入页 放行

//业务一般会判断本地有没有一个token的字段 如果有就跳转 如果没有 返回404

// router.beforeEach((to, from, next) => {
//   //to 就是路由要进入的目标页面对象 包含了目标页面的路径
//   console.log(to)
//   //from 源页面对象
//   console.log(from)
//   //next 是一个方法 用于控制是否释放控制权 让页面组件加载
//   next()
// })

// router.beforeEach((to, form, next) => {
//   //从本地存储中获取token
//   let token = localStorage.getItem("2108-token") || null
//   if (token) {
//     //放行
//     next()
//   } else {
//     //判断访问的是不是登入页
//     if (to.path === "/login") {
//       //如果是=>放行
//       next()
//     } else {
//       //如果不是=>跳转到登入页
//       next({ path: "/login" })
//     }
//   }
// })

// //路由进入之后触发的钩子=>应用在面包屑
// router.afterEach((to, from) => {

// })


new Vue({
  router,
  render: (h) => h(App),
}).$mount("#app");
